import pandas as pd
import numpy as np


def dataAnalyse():
    print("恶性肿瘤分析")
    # 0-常量定义
    folder_path = "./resources/"
    train_file_path = folder_path + "breast-cancer-train.csv"
    test_file_path = folder_path + "breast-cancer-test.csv"

    # 1-读取CSV文件
    # 调用 pandas 工具包的 read_csv 函数，传入地址参数，返回数据并且存至变量 df_train
    df_train = pd.read_csv(train_file_path)
    print(type(df_train))
    # 调用 pandas 工具包的 read_csv 函数，传入地址参数，返回数据并且存至变量 df_test
    df_test = pd.read_csv(test_file_path)

    # 2-空数据处理
    # 将'?'替换为标准缺失值(小心使用inplace=True，会改变原始数据类型)
    df_train = df_train.replace(to_replace='?', value=np.nan)
    # 丢弃含有标准缺失值的行(但是当前方法在其他方法中可以正常使用)
    data = df_train.dropna(how='any')
    print(data)


def dataAnalyse2():
    print("恶性肿瘤分析")
    # 创建一个示例数据集
    data = {'A': [1, 2, '?', 4, 5],
            'B': ['?', 6, 7, 8, 9],
            'C': [10, 11, 12, 13, 14]}
    df = pd.DataFrame(data)
    print(df)

    # 将'?'替换为标准缺失值(小心使用inplace=True，会改变原始数据类型)
    df.replace('?', np.nan, inplace=True)

    # 丢弃含有标准缺失值的行
    df.dropna(inplace=True)

    print(df)


if __name__ == '__main__':
    dataAnalyse()
    dataAnalyse2()
